Currently, there are two commonly used design methodologies—“Top-Down” design and “Bottom-Up” design. Top-Down design creates lower levels of functional details from upper levels of abstraction. FIG. 1A illustrates one embodiment of the Top-Down design. From a Master Assembly 102 of a product, the product design is divided into Module 1 (104), Module 2 (106), and Module 3 (108). Module 1 (104) contains Component 1 (110). Module 2 (106) is further divided into Module 2.1 (112) and Module 2.2 (114). Module 2.1 (112) is further divided into Component 2.11 (116) and Component 2.12 (118). Module 2.2 (114) contains Component 2.2 (120). Module 3 (108) contains Module 3.1 (122) which, in turn, contains Component 3.1 (124). All design activities take place from within the Master Assembly. Thus, the Master Assembly constitutes the design environment relative to which new Components are designed.
Top-Down design's major strengths are that it allows for concurrent design of multiple Modules and Components, while maintaining a consistent design environment. Thus, Top-Down design makes it easy to assign and manage design responsibilities among multiple designers while minimizing the risk of design errors and duplication of effort. However, it allows for little product variation in the design process and can be cumbersome due to the size and complexity of the Master Assembly. Specifically, the Master Assembly itself represents a specific configuration of the product. As such, when a product variation is required, a new Master Assembly and new Modules containing the variation are also required. Alternatively, the Master Assembly may represent all product variations by adding Modules representing each variation within the Master Assembly. In this case, the Master Assembly is even larger, making it more cumbersome to work with.
Contrary to Top-Down design, Bottom-Up design starts from lower levels of functional details. FIG. 1B illustrates a Bottom-Up design scheme for the same product in FIG. 1A. Here, Component 1 (154) is first designed. Module 1 (156) is formed based on Component 1 (154). Component 2.11 (158) and Component 2.12 (160) are combined to form Module 2.1 (162). Component 2.2 (164) forms Module 2.2 (166). Module 2.1 (162) and Module 2.2 (166) jointly form Module 2 (168). Component 3.1(170) forms Module 3.1(172) which, in turn, forms Module 3 (174). Module 1(156), Module 2 (168), and Module 3 (174) jointly form the Master Assembly (176), which is the same product as created in the Top-Down design of FIG. 1A. Since the Components are designed prior to forming the Modules and the Master Assembly, the Master Assembly and Modules are not available for use as the design environment used to design the Components. Instead, design environments are created, as Layout Assemblies as shown in FIG. 1C, by different designers each being responsible for one or more Components. For example, the Layout Assembly 180 of FIG. 1C consists of the Components 181 and 182 that one designer is designing, commingled with the Components 184–187 which he wishes to reference and are being designed by others.
Bottom-Up design's major strengths are its flexibility to handle the design of products with unlimited product variations and the relatively small design environments produced. For example, in FIG. 1C, Component 181 can be combined with any other components to produce a different Layout Assembly to be used as the design environment for designing a new component. The new component can be combined with any other components to produce a different module which, in turn, can be combined with other modules to produce a different product. This characteristic of the Bottom-Up design is also the major weakness of the Top-Down design. However, the Bottom-Up design does not provide a consistent design environment for multiple modules/components and, therefore, is not suited for permitting concurrent design of multiple modules/components, nor is it suited to permit easy management of design responsibilities among multiple designers.
A good design effort would need to combine the strengths of both the Top-Down design and the Bottom-Up design. Thus, there is a need for a design approach that strikes a balance between the Top-Down design and the Bottom-Up design, to achieve the strengths of both the Top-Down design and the Bottom-Up design while minimizing their weaknesses. The result would be a design approach that combines the flexibility of the Bottom-Up design to handle unlimited product variations, with the efficiency and the consistency of the Top-Down design to provide for concurrent design, common and consistent design environments, and the ability to readily assign and manage design responsibilities among multiple designers. The present invention is directed to providing such a design approach.